package com.xmg.design23.d20_command;

import org.redisson.client.protocol.CommandData;

/**
 * 命令模式在平时工作中并不常用，你稍微了解一下就可以。落实到编码实现，命令模式用到最核心的实现手段，就是将函数封装成对象。
 * 我们知道，在大部分编程语言中，函数是没法作为参数传递给其他函数的，也没法赋值给变量。
 * 借助命令模式，我们将函数封装成对象，这样就可以实现把函数像对象一样使用。
 *  命令模式的主要作用和应用场景，是用来控制命令的执行，比如，异步、延迟、排队执行命令、撤销重做命令、存储命令、给命令记录日志等，这才是命令模式能发挥独一无二作用的地方。
 *
 * @Author: mazhongqing
 * @Date: 2021/3/24 18:31
 */
public class Test {
    public static void main(String[] args) {
        Command command = new ConcreteCommand();
        Invoker ir = new Invoker(command);
        System.out.println("客户访问调用者的call方法。。。");
        ir.call();
    }
}
